package com.coding.mapper;

import com.coding.pojo.Users;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

@Mapper
public interface UserMapper {
    //判断手机号
    Users selectByPhone(String phoneNumber);

    //判断邮箱号
    Users selectByemail(String email);

    //通过手机号和密码登录
    Users login(@Param("phoneNumber") String phoneNumber, @Param("passWord") String passWord);

    //手机通过验证码登录
    Users loginAndcode(String phoneNumber);

    // 邮箱登录
    Users emailAndpwd(@Param("email") String email, @Param("passWord") String passWord);

    // 邮箱通过验证码登录
    Users mailAndcode(String phoneNumber);

    // 邮箱更改密码
    int Changepassword(@Param("phoneNumber") String phoneNumber, @Param("passWord") String passWord);

    //注册手机号
    int registerPhone(@Param("phoneNumber") String phoneNumber,@Param("userName")String userName);

    //    通过手机绑定邮箱
    int bindemail(@Param("phoneNumber") String phoneNumber, @Param("email") String email);

    //更改个人信息
    int ChangeInformation(Users users);

    //注销用户
    int LogoutUser(Long id);

    //根据用户id返回用户信息
    Users FindUser(Long id);

    //判断双向用户黑名单状态
    Users UserisBlocked(@Param("userId") Long id, @Param("blockedUserId") Long blockedUserId);

    //用户拉黑
    int isBlocked (@Param("userId") Long id, @Param("blockedUserId") Long blockedUserId);

    //通过id用户余额查询
    int UserBalance(Long id);

    //用户认证信息插入
    int authentication(@Param("IdCard") Long IdCard,@Param("userId") Long id);

    //认证状态更改
    int authenticationStatus(Long id);






}
